package com.panasonic.cn.cmsc;

import java.io.*;
import java.lang.*;
import java.util.*;
import java.math.*;
import java.sql.SQLException;
import com.fujitsu.fks.jaaf.core.*;

public class SQLMM0502{
	private Hashtable paramsString     = new Hashtable();
	private Hashtable paramsBigDecimal = new Hashtable();
	private Hashtable paramsFree       = new Hashtable();
	private String lastSql_ = null;

	private String getString(String name){
		if(name==null) return "";
		String returnStr = (String)paramsString.get(name);
		if(returnStr==null) return "";
		return "'"+FrameworkCommon.stringReplaceSQuote(returnStr)+"'";
	}

	private String getBigDecimal(String name){
		if(name==null) return "";
		BigDecimal returnStr = (BigDecimal)paramsBigDecimal.get(name);
		if(returnStr==null) return "";
		return returnStr.toString();
	}

	private String getFree(String name){
		if(name==null) return "";
		String returnStr = (String)paramsFree.get(name);
		if(returnStr==null) return "";
		return returnStr;
	}

	public String getLastSql(){
		return lastSql_;
	}

	public SelectResultRset SELECT_M0501(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	NVL(SLCP_CD,'') AS SLCP_CD,");
		sql.append("	NVL(CUS_CD,'') AS CUS_CD,");
		sql.append("	NVL(ITM_NO,'') AS ITM_NO,");
		sql.append("	NVL(APL_BDT,'') AS APL_BDT,");
		sql.append("	NVL(APL_EDT,'') AS APL_EDT,");
		sql.append("	NVL(GNR_ADM_NO,'') AS GNR_ADM_NO,");
		sql.append("	NVL(SLS_PRIZ,'') AS SLS_PRIZ,");
		sql.append("    NVL( CUS_PRC_TAB_CN,   '') AS CUS_PRC_TAB_CN,");
		sql.append("	TO_CHAR(NVL(RGS_DTTM,''),'YYYYMMDDHH24MISS') AS RGS_DTTM,");
		sql.append("	NVL(RGS_CHRG_CD,'') AS RGS_CHRG_CD,");
		sql.append("	NVL(RGS_PGID,'') AS RGS_PGID,");
		sql.append("	TO_CHAR(NVL(UPD_DTTM,''),'YYYYMMDDHH24MISS') AS UPD_DTTM,");
		sql.append("	NVL(UPD_CHRG_CD,'') AS UPD_CHRG_CD,");
		sql.append("	NVL(UPD_PGID,'') AS UPD_PGID,");
		sql.append("	NVL(FM_TYP,'') AS FM_TYP ");
		sql.append("	FROM ");
		sql.append("	M05 ");
		sql.append("	WHERE ");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+" ");
		sql.append("	AND ");
		sql.append("	FM_TYP <> "+getString("FM_TYP6")+" ");
		sql.append("	ORDER BY ");
		sql.append("	SLCP_CD,CUS_CD,ITM_NO,GNR_ADM_NO ASC");
		sql.append("	");
		sql.append("	");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0502(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	NVL(SLCP_CD,'') AS SLCP_CD,");
		sql.append("	NVL(CUS_CD,'') AS CUS_CD,");
		sql.append("	NVL(ITM_NO,'') AS ITM_NO,");
		sql.append("	NVL(APL_BDT,'') AS APL_BDT,");
		sql.append("	NVL(APL_EDT,'') AS APL_EDT,");
		sql.append("	NVL(GNR_ADM_NO,'') AS GNR_ADM_NO,");
		sql.append("	NVL(SLS_PRIZ,'') AS SLS_PRIZ,");
		sql.append("    NVL( CUS_PRC_TAB_CN,   '') AS CUS_PRC_TAB_CN,");
		sql.append("	TO_CHAR(NVL(RGS_DTTM,''),'YYYYMMDDHH24MISS') AS RGS_DTTM,");
		sql.append("	NVL(RGS_CHRG_CD,'') AS RGS_CHRG_CD,");
		sql.append("	NVL(RGS_PGID,'') AS RGS_PGID,");
		sql.append("	TO_CHAR(NVL(UPD_DTTM,''),'YYYYMMDDHH24MISS') AS UPD_DTTM,");
		sql.append("	NVL(UPD_CHRG_CD,'') AS UPD_CHRG_CD,");
		sql.append("	NVL(UPD_PGID,'') AS UPD_PGID,");
		sql.append("	NVL(FM_TYP,'') AS FM_TYP ");
		sql.append("	FROM ");
		sql.append("	M05 ");
		sql.append("	WHERE ");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+" ");
		sql.append("	AND ");
		sql.append("	CUS_CD LIKE "+getString("CUS_CD")+" ");
		sql.append("	AND ");
		sql.append("	ITM_NO LIKE "+getString("ITM_NO")+" ");
		sql.append("	AND ");
		sql.append("	APL_BDT <"+((getString("SYS_DATE").equals(""))?" is null ":"=")+getString("SYS_DATE")+" ");
		sql.append("	AND ");
		sql.append("	APL_EDT >"+((getString("SYS_DATE").equals(""))?" is null ":"=")+getString("SYS_DATE")+" ");
		sql.append("	AND ");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD') >"+((getString("FRM_DT").equals(""))?" is null ":"=")+getString("FRM_DT")+" ");
		sql.append("	AND ");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD') <"+((getString("TO_DT").equals(""))?" is null ":"=")+getString("TO_DT")+" ");
		sql.append("	AND ");
		sql.append("	FM_TYP <> "+getString("FM_TYP6")+" ");
		sql.append("	ORDER BY ");
		sql.append("	SLCP_CD,CUS_CD,ITM_NO,GNR_ADM_NO ASC");
		sql.append("	");
		sql.append("	");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0503(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	NVL(SLCP_CD,'') AS SLCP_CD,");
		sql.append("	NVL(CUS_CD,'') AS CUS_CD,");
		sql.append("	NVL(ITM_NO,'') AS ITM_NO,");
		sql.append("	NVL(APL_BDT,'') AS APL_BDT,");
		sql.append("	NVL(APL_EDT,'') AS APL_EDT,");
		sql.append("	NVL(GNR_ADM_NO,'') AS GNR_ADM_NO,");
		sql.append("	NVL(SLS_PRIZ,'') AS SLS_PRIZ,");
		sql.append("    NVL( CUS_PRC_TAB_CN,   '') AS CUS_PRC_TAB_CN,");
		sql.append("	TO_CHAR(NVL(RGS_DTTM,''),'YYYYMMDDHH24MISS') AS RGS_DTTM,");
		sql.append("	NVL(RGS_CHRG_CD,'') AS RGS_CHRG_CD,");
		sql.append("	NVL(RGS_PGID,'') AS RGS_PGID,");
		sql.append("	TO_CHAR(NVL(UPD_DTTM,''),'YYYYMMDDHH24MISS') AS UPD_DTTM,");
		sql.append("	NVL(UPD_CHRG_CD,'') AS UPD_CHRG_CD,");
		sql.append("	NVL(UPD_PGID,'') AS UPD_PGID,");
		sql.append("	NVL(FM_TYP,'') AS FM_TYP ");
		sql.append("	FROM ");
		sql.append("	M05 ");
		sql.append("	WHERE ");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+" ");
		sql.append("	AND ");
		sql.append("	CUS_CD LIKE "+getString("CUS_CD")+" ");
		sql.append("	AND ");
		sql.append("	ITM_NO LIKE "+getString("ITM_NO")+" ");
		sql.append("	AND ");
		sql.append("	APL_BDT > "+getString("SYS_DATE")+" ");
		sql.append("	AND ");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD') >"+((getString("FRM_DT").equals(""))?" is null ":"=")+getString("FRM_DT")+" ");
		sql.append("	AND ");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD') <"+((getString("TO_DT").equals(""))?" is null ":"=")+getString("TO_DT")+" ");
		sql.append("	AND ");
		sql.append("	FM_TYP <> "+getString("FM_TYP6")+" ");
		sql.append("	ORDER BY ");
		sql.append("	SLCP_CD,CUS_CD,ITM_NO,GNR_ADM_NO ASC");
		sql.append("	");
		sql.append("	");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0504(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	NVL(SLCP_CD,'') AS SLCP_CD,");
		sql.append("	NVL(CUS_CD,'') AS CUS_CD,");
		sql.append("	NVL(ITM_NO,'') AS ITM_NO,");
		sql.append("	NVL(APL_BDT,'') AS APL_BDT,");
		sql.append("	NVL(APL_EDT,'') AS APL_EDT,");
		sql.append("	NVL(GNR_ADM_NO,'') AS GNR_ADM_NO,");
		sql.append("	NVL(SLS_PRIZ,'') AS SLS_PRIZ,");
		sql.append("    NVL( CUS_PRC_TAB_CN,   '') AS CUS_PRC_TAB_CN,");
		sql.append("	TO_CHAR(NVL(RGS_DTTM,''),'YYYYMMDDHH24MISS') AS RGS_DTTM,");
		sql.append("	NVL(RGS_CHRG_CD,'') AS RGS_CHRG_CD,");
		sql.append("	NVL(RGS_PGID,'') AS RGS_PGID,");
		sql.append("	TO_CHAR(NVL(UPD_DTTM,''),'YYYYMMDDHH24MISS') AS UPD_DTTM,");
		sql.append("	NVL(UPD_CHRG_CD,'') AS UPD_CHRG_CD,");
		sql.append("	NVL(UPD_PGID,'') AS UPD_PGID,");
		sql.append("	NVL(FM_TYP,'') AS FM_TYP ");
		sql.append("	FROM ");
		sql.append("	M05 ");
		sql.append("	WHERE ");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+" ");
		sql.append("	AND ");
		sql.append("	CUS_CD LIKE "+getString("CUS_CD")+" ");
		sql.append("	AND ");
		sql.append("	ITM_NO LIKE "+getString("ITM_NO")+" ");
		sql.append("	AND ");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD') >"+((getString("FRM_DT").equals(""))?" is null ":"=")+getString("FRM_DT")+" ");
		sql.append("	AND ");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD') <"+((getString("TO_DT").equals(""))?" is null ":"=")+getString("TO_DT")+" ");
		sql.append("	AND ");
		sql.append("	FM_TYP <> "+getString("FM_TYP6")+" ");
		sql.append("	AND ( ");
		sql.append("	FM_TYP <> "+getString("FM_TYP9")+" ");
		sql.append("	OR (");
		sql.append("	FM_TYP "+((getString("FM_TYP9").equals(""))?" is null ":"=")+getString("FM_TYP9")+" AND APL_EDT >"+((getString("SYS_DATE").equals(""))?" is null ":"=")+getString("SYS_DATE")+" ");
		sql.append("	) )");
		sql.append("	ORDER BY ");
		sql.append("	SLCP_CD,CUS_CD,ITM_NO,GNR_ADM_NO ASC");
		sql.append("	");
		sql.append("	");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0505(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	NVL(SLCP_CD,'') AS SLCP_CD,");
		sql.append("	NVL(CUS_CD,'') AS CUS_CD,");
		sql.append("	NVL(ITM_NO,'') AS ITM_NO,");
		sql.append("	NVL(APL_BDT,'') AS APL_BDT,");
		sql.append("	NVL(APL_EDT,'') AS APL_EDT,");
		sql.append("	NVL(GNR_ADM_NO,'') AS GNR_ADM_NO,");
		sql.append("	NVL(SLS_PRIZ,'') AS SLS_PRIZ,");
		sql.append("    NVL( CUS_PRC_TAB_CN,   '') AS CUS_PRC_TAB_CN,");
		sql.append("	TO_CHAR(NVL(RGS_DTTM,''),'YYYYMMDDHH24MISS') AS RGS_DTTM,");
		sql.append("	NVL(RGS_CHRG_CD,'') AS RGS_CHRG_CD,");
		sql.append("	NVL(RGS_PGID,'') AS RGS_PGID,");
		sql.append("	TO_CHAR(NVL(UPD_DTTM,''),'YYYYMMDDHH24MISS') AS UPD_DTTM,");
		sql.append("	NVL(UPD_CHRG_CD,'') AS UPD_CHRG_CD,");
		sql.append("	NVL(UPD_PGID,'') AS UPD_PGID,");
		sql.append("	NVL(FM_TYP,'') AS FM_TYP ");
		sql.append("	FROM ");
		sql.append("	M05 ");
		sql.append("	WHERE ");
		sql.append("	SLCP_CD "+((getString("SLCP_CD").equals(""))?" is null ":"=")+getString("SLCP_CD")+" ");
		sql.append("	AND ");
		sql.append("	CUS_CD LIKE "+getString("CUS_CD")+" ");
		sql.append("	AND ");
		sql.append("	ITM_NO LIKE "+getString("ITM_NO")+" ");
		sql.append("	AND ");
		sql.append("	APL_EDT < "+getString("SYS_DATE")+" ");
		sql.append("	AND ");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD') >"+((getString("FRM_DT").equals(""))?" is null ":"=")+getString("FRM_DT")+" ");
		sql.append("	AND ");
		sql.append("	TO_CHAR(UPD_DTTM,'YYYYMMDD') <"+((getString("TO_DT").equals(""))?" is null ":"=")+getString("TO_DT")+" ");
		sql.append("	AND ");
		sql.append("	FM_TYP "+((getString("FM_TYP9").equals(""))?" is null ":"=")+getString("FM_TYP9")+" ");
		sql.append("	ORDER BY ");
		sql.append("	SLCP_CD,CUS_CD,ITM_NO,GNR_ADM_NO ASC");
		sql.append("	");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}

	public SelectResultRset SELECT_M0201(FrameworkDbCommon db) throws Exception {
		StringBuffer sql = new StringBuffer();
		sql.append("	SELECT ");
		sql.append("	NVL(ITM_NM_CN,'') AS ITM_NM_CN");
		sql.append("	FROM");
		sql.append("	M02");
		sql.append("	WHERE ");
		sql.append("	ITM_NO "+((getString("ITM_NO").equals(""))?" is null ":"=")+getString("ITM_NO")+" ");
		sql.append("	AND ");
		sql.append("	FM_TYP <> "+getString("FM_TYP_6")+" ");
		sql.append("	AND");
		sql.append("	APL_BDT <"+((getString("APL_BDT").equals(""))?" is null ":"=")+getString("APL_BDT")+"");
		sql.append("	AND");
		sql.append("	APL_EDT >"+((getString("APL_EDT").equals(""))?" is null ":"=")+getString("APL_EDT")+"");
		db.setSql(sql.toString());
		lastSql_ =sql.toString();
		SelectResultRset srr = db.executeQuery();
		paramsString     = new Hashtable();
		paramsBigDecimal = new Hashtable();
		paramsFree       = new Hashtable();

		return srr;
	}


	public void setSLCP_CD(String value){
		if(value==null) {
			paramsString.remove("SLCP_CD");
			return;
		}
		paramsString.put("SLCP_CD",value);
	}


	public void setFM_TYP6(String value){
		if(value==null) {
			paramsString.remove("FM_TYP6");
			return;
		}
		paramsString.put("FM_TYP6",value);
	}


	public void setCUS_CD(String value){
		if(value==null) {
			paramsString.remove("CUS_CD");
			return;
		}
		paramsString.put("CUS_CD",value);
	}


	public void setITM_NO(String value){
		if(value==null) {
			paramsString.remove("ITM_NO");
			return;
		}
		paramsString.put("ITM_NO",value);
	}


	public void setSYS_DATE(String value){
		if(value==null) {
			paramsString.remove("SYS_DATE");
			return;
		}
		paramsString.put("SYS_DATE",value);
	}


	public void setFRM_DT(String value){
		if(value==null) {
			paramsString.remove("FRM_DT");
			return;
		}
		paramsString.put("FRM_DT",value);
	}


	public void setTO_DT(String value){
		if(value==null) {
			paramsString.remove("TO_DT");
			return;
		}
		paramsString.put("TO_DT",value);
	}


	public void setFM_TYP9(String value){
		if(value==null) {
			paramsString.remove("FM_TYP9");
			return;
		}
		paramsString.put("FM_TYP9",value);
	}


	public void setFM_TYP_6(String value){
		if(value==null) {
			paramsString.remove("FM_TYP_6");
			return;
		}
		paramsString.put("FM_TYP_6",value);
	}


	public void setAPL_BDT(String value){
		if(value==null) {
			paramsString.remove("APL_BDT");
			return;
		}
		paramsString.put("APL_BDT",value);
	}


	public void setAPL_EDT(String value){
		if(value==null) {
			paramsString.remove("APL_EDT");
			return;
		}
		paramsString.put("APL_EDT",value);
	}


}
